package com.winsdom.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import java.time.LocalDateTime;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(description = "收款记录请求实体")
public class PaymentReceiptDTO {

    @ApiModelProperty(value = "收款开始时间")
    private LocalDateTime receiptStartTime;

    @ApiModelProperty(value = "收款结束时间")
    private LocalDateTime receiptEndTime;

    @ApiModelProperty(value = "收款流水号")
    private String receiptSerial;

    @ApiModelProperty(value = "支付流水号")
    private String paymentSerial;

    @ApiModelProperty(value = "付款人")
    private String payerName;

    @ApiModelProperty(value = "付款业主")
    private String payerCustomerName;

    @ApiModelProperty(value = "付款方式")
    @Min(value = 1,message = "请正确选择付款方式") @Max(value = 4,message = "请正确选择付款方式")
    private Integer paymentMethod;

    @ApiModelProperty(value = "收款人")
    private String payeeName;

    @ApiModelProperty(value = "收款状态")
    @Min(value = 0,message = "请正确选择收款状态") @Max(value = 2,message = "请正确选择收款状态")
    private Integer status;

    @ApiModelProperty(value = "查询页数")
    @Min(value = 1,message = "查询页数必须大于等于1")
    private Integer pageNum = 1;

    @ApiModelProperty(value = "每页大小")
    @Min(value = 1,message = "每页大小必须大于等于1")
    private Integer pageSize = 10;

}
